package cn.tedu.collection.list;

import java.util.ArrayList;
import java.util.Iterator;

public class IteratorDemo {
    public static void main(String[] args) {
        //创建集合对象
        ArrayList<String> list=new ArrayList<>();
        //添加元素
        list.add("abc");
        list.add("ac");
        list.add("ab");
        list.add("bc");
        list.add("1abc");

        //调用方法返回迭代器
        Iterator<String> it =list.iterator();

        //迭代遍历
        while(it.hasNext()){//判断下一位是否有元素
            //返回下一位元素
            String str=it.next();
            //调用迭代器的remove方法
            //底层改变标记值，java自动删除对应的集合元素
            //it.remove();
            //调用集合提供的remove方法
            //如果直接增删原集合元素，标记值没有改变，最后依然会进行对比发现数据不对应
            //就会报错，迭代期间不能增删原集合元素
            list.remove(str);
        }

        //
        System.out.println(list);









    }
}
